﻿using Kanban.Entity;
using Kanban.Repository;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace Kanban.Business
{
    public class UsuarioBusiness
    {
        public UsuarioRepository Repository { get; set; }

        public UsuarioBusiness()
        {
            this.Repository = new UsuarioRepository();
        }

        public void Adicionar(Usuario usuario)
        {
            this.Repository.Adicionar(usuario);
        }

        public void Atualizar(Usuario usuario)
        {
            this.Repository.Atualizar(usuario);
        }

        public void AtualizarSenha(int id, string senha)
        {
            this.Repository.AtualizarSenha(id, senha);
        }

        public Usuario ObterPorId(int id)
        {
            return this.Repository.ObterPorId(id);
        }

        public Usuario ObterPorNome(string nome)
        {
            return this.Repository.ObterPorNome(nome);
        }


        public Usuario ObterPorNomeSenha(string login, string senha)
        {
            return this.Repository.ObterPorNomeSenha(login, senha);
        }

        public bool ConsultarSenhaPorNome(string nome)
        {
            return this.Repository.ConsultarSenhaPorNome(nome);
        }


        public List<Usuario> ListarPorEquipe(int idEquipe)
        {
            return this.Repository.ListarPorEquipe(idEquipe);
        }

        public List<Usuario> Listar()
        {
            return this.Repository.Listar();
        }

        public void Remover(int id)
        {
            this.Repository.Remover(id);
        }

        public bool ConsultarSePodeVerQuadro(string nomeUsuario, int idQuadro)
        {
            return this.Repository.ConsultarSePodeVerQuadro(nomeUsuario, idQuadro);
        }
    }
}
